/**
 * @file    main.c 
 * @author  18408107475@163.com
 * @version V1.0.0
 * @date    2025-08-6
 * @brief   ESP8266-01S模块客户端模式主程序
 * @details 
 * 硬件配置：
 *   - 主控芯片：STM32F10x系列微控制器
 *   - 通信接口：USART1（调试）、USART3（连接ESP8266-01S）
 *   - ESP8266-01S：通过串口与STM32通信，实现WiFi网络连接功能
 * 
 * 软件特性：
 *   - 初始化调试串口与ESP8266模块
 *   - 配置ESP8266为客户端模式，连接指定WiFi和TCP服务器
 *   - 主循环保持系统运行，可扩展数据收发功能
 */

/* Includes ------------------------------------------------------------------*/
#include "stm32f10x.h"              // STM32标准外设库（提供所有外设寄存器定义）
#include "Delay.h"                  // 基于SysTick的延时函数（本程序未直接使用）
#include "USART1_Config.h"          // USART1配置（备用调试接口，未启用）
#include "ESP8266_Config.h"         // ESP8266模块配置函数库

/* 私有变量定义 --------------------------------------------------------------*/
// 此处可添加程序所需的私有变量，如数据缓冲区、状态标志等


/**
 * @分类：主程序入口
 * @功能：完成系统初始化并进入主循环
 * @作用：作为程序执行的起点，初始化硬件资源并维持系统运行
 * @brief  主程序入口
 * @param  None
 * @retval int 程序状态码（实际不返回，因主循环为无限循环）
 * @执行流程：
 *   1. 初始化USART1（调试接口）
 *   2. 初始化ESP8266为客户端模式
 *   3. 进入无限循环，维持系统运行
 */
int main(void)
{
    // @分类：调试接口初始化
    // @功能：配置USART1通信参数
    // @作用：建立STM32与PC的调试通信链路，用于输出调试信息
    USART1_Config(115200);
    
    // @分类：ESP8266模块初始化
    // @功能：配置ESP8266为客户端模式
    // @作用：完成模块硬件通信初始化、WiFi连接及TCP服务器连接
    ESP8266_Client_Config(115200);

    // @分类：主循环
    // @功能：维持系统持续运行
    // @作用：提供程序运行载体，可在此扩展数据收发、状态监测等功能
    while (1)                   
    {
        // 此处可添加数据发送、接收处理等业务逻辑
    }
}

/************************ (C) COPYRIGHT 2025 TS *****END OF FILE****/